An in-depth guide for collecting publicly available information on the popular voice, video and text messaging app, Discord, for OSINT researchers.
Discord is a communication platform similar to Slack, TeamSpeak and Microsoft Teams. It was initially developed to facilitate Voice over Internet Protocol (VoIP) and text communications for online gamers. But it gradually became a platform that spans different areas of interest, such as tech and science, education, music, entertainment and the latest category, Student Hubs.
As of 2023, Discord has approximately 563 Million registered users, and 26 million of them are daily active users. The large number of Discord users makes it an important social media platform that OSINT investigators should consider during investigations. Discord provides additional visibility into the activities, conversations, connections and behaviors of both organizations and individuals.
In this article, I will examine the main areas of the Discord platform; I will begin defining its architecture, discover its interface and find out how we can find our way around it. I will also introduce some tools and free services that can be leveraged to facilitate our search within it.
Discord’s architecture
Discord operates using a centralized client-server architecture. It is a proprietary platform that provides audio/video communications implemented via WebRTC (Web Real-Time Communication) and text chat. Discord has a web version and official applications that run on all major operating systems, such as Windows, Linux and Mac, as well as on mobile devices like Android and iOS.
Unlike open-source software, which can be self-hosted or audited for security aspects, Discord is a closed-source solution, and its operators can monitor users' interactions across the platform.
Discord servers
Discord comprises of servers; each server represents a community covering one area of interest. Anyone can create a new server. Free Discord users can create up to 100 servers only, while paid subscribers can create up to 200 servers. To discover Discord communities, you can use the Discord community search function.
You can access the Server Discovery function from the server list on the left sidebar after you sign into your current Discord account (see Figure 1).
Figure 1 - Access Server Discover from within your Discord account
We can enter the server or community name in the search text box if we know it. We can also insert a keyword instead and search to see all communities that match our search terms. Discord will display filters on the result page to limit our search to specific categories (see Figure 2).
Figure 2 - Using Discord search function to search for discoverable communities
Now, we can discover some information about each server (community) found on the search result page. For instance, with “Preview mode,” Discord allows you to view some information about the server before joining it officially. This information includes:
- Server name and icon
- Server description
- Server member count
- Number of active members currently online
- Number of text and voice channels
- If the server is verified
- Public channels
It is worth noting that the amount of information available about each Discord server in preview mode will differ for each server based on server settings and privacy preferences.
Free users can join 100 servers, while paid users, called Nitro subscribers, can join up to 200.
An important point to consider when searching for Discord servers is that not all servers are listed on the Discord Server Discovery page. For instance, a Discord server must meet six requirements before it can be included in the public server discovery, such as: having at least 1000 members and the account should be at least eight weeks old.
The estimated number of active Discord servers was about 19 million at the beginning of 2023 per week, according to Statista. However, most of these servers contain less than 15 members, automatically excluding them from the official Discord Server Discovery.
Find unlisted Discord servers
As we already said, the majority of Discord servers are hidden. Nevertheless, there are many ways to search for these servers:
- We can search online forums and communities to find direct links to Discord servers. For instance, many Discord server links are shared on subreddits and similar discussion forums (see Figure 3)
Figure 3 - Search Reddit for links to Discord servers
- Search within Discord servers listing websites. For example, the Disboard website lists thousands of Discord servers divided into categories. It contains many unlisted Discord servers (see Figure 4). Other Discord listing servers include DiscordServers, Discord.me, top.gg and Discadia
Figure 4 - disboard.org lists thousands of Discord servers
- Search within Discord public servers to find links to other unlisted Discord servers. For example, many users share invites to other Discord servers in public Discord server channels
- Search for Discord server links on other social media platforms. For example, many users share their Discord server link on their Twitter or Facebook profiles
- Use Discord bots to search for other Discord servers, such as the Discordbotlist
Using Google dorks
Google advanced search operators can be used to find Discord servers. Here are some examples:
- “search term” site:discord.com
- “search term” allinurl:discord.com
- intext:"discord" intext:"Join" -site:discord.com
- intext:"Discord" intext:"#community" -site:discord.com
- intext:"Discord" intext:"OSINT Community" -site:discord.com
Using the built-in search functionality of the Discord server
Now, let us introduce the built-in search functionality of the Discord server. Please note the Discord built-in search will only search within the current open community or server; hence, you must join the server before you can search within it.
Here is how it works:
Note: I’m using the web interface of Discord in my experiment.
You will find the search bar in the upper right corner of the Discord page. Put your mouse within it, and a list of search operators will appear in a drop-down menu (see Figure 5).
Figure 5 - Using the Discord search options
From:
The “From” filter lets you specify a specific Discord member to find all messages sent by them.
Has:
The "Has" filter enables searching messages by the media they contain within. For instance, Link or Embed filters search for such items within the messages, while Video, Sound and Image filters search within messages containing such media (see Figure 6)
Figure 6 - Using the Discord "Has" filter
In:
The “In” filter lets you specify which channels you want to search within your currently opened server. For example, type “In” and then type the name/s of the channels you wish to search within them (see Figure 7)
Figure 7 - Use the In filter to specify the channels you want to search within in the currently opened server
Before, During, & After:
These filters allow specifying the starting date or the search range between two dates (see Figure 8).
Figure 8 - You can use the date/time filters to specify the date/time range you want to search within
Investigating Discord users profiles
In this section, I will demonstrate how to gather information about any Discord user.
Access the Discord server where your target user is located, and click on the target user’s username (it starts with the @ symbol). A pop-up window appears, displaying some information about the user (see Figure 9). To get the complete information about the user profile, click on the user profile picture, and the following information is available:
- The user’s “about me” section revealssmall introductory information about the user. This section may contain links to the user's profiles on other social media platforms like Facebook, LinkedIn or YouTube
- The date when this user joined Discord
- Mutual Server – This list displays all servers that both the subject user and the OSINT gather share
- Mutual friends between the user and the OSINT gather
- Profile image
- Profile banner
- User Discord ID – you need to click the three dots in the top right side of the window to get it
Figure 9 - Inspecting Discord user's profile
Now, let us use some online services to gather more information about this Discord user profile.
After acquiring the user’s Discord ID, we can use the Discord.id website to get the user the actual version (full size) of the target Discord user profile picture and banner image (see Figure 10).
Figure 10 – Using discord.id to enlarge user profile
Clicking the user profile and banner images will open two new windows containing the full-size images.
Now, we can use reverse image search to check where these images appear; here are three reverse image search engines.
We can also utilize the Discord user "username" to perform a reverse username search, which helps us locate other social media profiles that share a similar username. Below are some websites that facilitate reverse username searches.
Useful links to other Discord resources
Many online services can help OSINT gatherers search within Discord communities. Here are the most important ones:
- Discordservers – Discord search engine
- Discord Center – Discord search engine
- Discordbee – A Discord search engine for locating Discord servers
- Discord Hub – A search engine for Discord users
- Unfurl – Extract timestamp information about any Discord link
- Discord ID Creation Date Checker
- Discord leaks
- Discord History Tracker - lets you save chat history in your servers, groups, and private conversations and view it offline
Discord presents a vast landscape for OSINT investigations, offering unique insights into users, communities and content. Leveraging its diverse features and information-sharing potential, Discord proves to be a valuable resource for conducting thorough OSINT examinations that any serious OSINT researcher should consider.
Remember to stay secure and anonymous while you research. Protect your identity and the intent of your investigation with a purpose-built digital investigation platform like Silo for Research.
Tags Anonymous research OSINT research Social media